home *** CD-ROM | disk | FTP | other *** search
- #ifndef AEHANDLER_H
- #define AEHANDLER_H
-
- #include <MixedMode.h>
- #include <AppleEvents.h>
- #include <Types.h>
-
-
- #include "Board.h"
- #include "Game.h"
- #include "Global.h"
- #include "Menu.h"
- #include "Rules.h"
-
- enum {
- noConnectionErr = 0xAB1,
- differentNumPlayersErr,
- settingsDontMatchErr,
- illegalMoveErr,
- duplicateMoveErr,
- outOfSyncErr,
- missingDataErr,
- noMoveDataErr,
- noGameDataErr,
- noInitDataErr
- };
-
- #define kAbaloneEventClass 'A*1e'
-
- #define kSendMove 'Move'
- #define kSendBord 'Bård'
- #define kSendGame 'Game'
- #define kSendInit 'Init'
- #define kSendNew1 'New1'
- #define kSendChck 'Chck'
- #define kSendAdrs 'Adrs'
- #define kSendBits 'Bits'
- #define kSendPlyr 'Plær'
- #define kSendStop 'Stop'
- #define kSendSets 'Sets'
- #define kReplySet1 'Set1'
- #define kReplySet2 'Set2'
- #define kReplyChck 'Chc1'
- #define kReplyBord 'Bår1'
- #define kReplyGame 'Gam1'
-
- #define typeMove 'MOVE'
- #define typeAdrs 'targ'
- #define typeGame 'GAME'
- #define typeBord 'BåRD'
- #define typeSets 'SETS'
- #define typePlyr 'PLÆR'
- #define typeChck 'CHK∑'
- #define typeBits 'BITS'
-
- // Required High Level Event handlers
-
- pascal OSErr DoAEOpenApplication (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAEOpenDocuments (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAEPrintDocuments (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAEQuitApplication (AppleEvent, AppleEvent, long refCon);
-
- // Abalone High Level Event handlers
-
- pascal OSErr DoAEMove (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAEGame (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAEInit (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAENew1 (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAEStop (AppleEvent, AppleEvent, long refCon);
- pascal OSErr DoAEAdrs (AppleEvent, AppleEvent, long refCon);
-
- pascal OSErr SendAEMove ( AEAddressDesc *opponent,
- MovePtr move,
- short player,
- long checksum
- );
- pascal OSErr SendAEGame ( AEAddressDesc *opponent,
- GamePtr game,
- BoardPtr board,
- GamePtr serverGame,
- BoardPtr serverBoard
- );
- pascal OSErr SendAEInit ( AEAddressDesc *opponent,
- SettingsPtr settings,
- SettingsPtr serverSettings,
- long *checkSum
- );
- pascal OSErr SendAENew1 ( AEAddressDesc *opponent, SettingsPtr settings);
- pascal OSErr SendAEStop (AEAddressDesc *opponent, short quitter);
- pascal OSErr SendAEAdrs (AEAddressDesc *opponent, AEAddressDesc *addressDesc, short player);
-
- #endif
-
- #ifdef AEHANDLER_C
-
- #include "Abalone.h"
- #include "AppleEvent.h"
- //#include "Board.h"
- //#include "Compute.h"
- #include "Connection.h"
- #include "Define.h"
- #include "DoEvent.h"
- //#include "Draw3D.h"
- #include "Error.h"
- #include "File.h"
- #include "Game.h"
- #include "Global.h"
- //#include "InsideMac.h"
- #include "Interface.h"
- //#include "Menu.h"
- //#include "Rules.h"
-
- #include <Errors.h>
- #include <Events.h>
- #include <Files.h>
- #include <PPCToolbox.h>
-
-
- // Functions actually processing the required high level events.
-
- OSErr AEOpenApplicationHandler (AppleEvent *, long refCon);
- OSErr AEOpenDocumentsHandler (AppleEvent *, long refCon);
- OSErr AEPrintDocumentsHandler (AppleEvent *, long refCon);
- OSErr AEQuitApplicationHandler (AppleEvent *, long refCon);
-
- // Functions actually processing the abalone high level events.
-
- OSErr AbaloneMoveHandler (AppleEvent *, AppleEvent *, long refCon);
- OSErr AbaloneGameHandler (AppleEvent *, AppleEvent *, long refCon);
- OSErr AbaloneNew1Handler (AppleEvent *, AppleEvent *, long refCon);
- OSErr AbaloneInitHandler (AppleEvent *, AppleEvent *, long refCon);
- OSErr AbaloneStopHandler (AppleEvent *, AppleEvent *, long refCon);
- OSErr AbaloneAdrsHandler (AppleEvent *, AppleEvent *, long refCon);
-
- pascal OSErr GotRequiredParams (AppleEvent *message);
-
- pascal Boolean AbalonePortFilter (LocationNamePtr locationName, PortInfoPtr thePortInfo);
-
- #endif
-